import accessEnum from "@/access/accessEnum";

/**
 * 封装检验权限方法,路由拦截
 * @param loginUser 当前登录用户
 * @param needAccess 需要的权限
 * @return 是否拥有权限
 */
export default (loginUser: any, needAccess: string = accessEnum.NOT_LOGIN) => {
  //获取当前登录用户的权限角色
  const loginUserAccess = loginUser?.userRole ?? accessEnum.NOT_LOGIN;
  //如果页面不需要权限,那么就直接放行
  if (needAccess === accessEnum.NOT_LOGIN) {
    return true;
  }
  //如果需要用户登录才能访问,没有登陆就进行拦截
  if (
    needAccess === accessEnum.USER &&
    loginUserAccess === accessEnum.NOT_LOGIN
  ) {
    return false;
  }
  //如果页面需要管理员权限
  if (needAccess === accessEnum.ADMIN && loginUserAccess !== accessEnum.ADMIN) {
    return false;
  }
  return true;
};
